System And Method For Goal Driven Threshold Setting In Distributed System Management

ABSTRACT

The present invention includes, but is not limited to, a method, system and computer-usable medium for providing automated management of threshold crossing alarms. Transaction processing resources are selected for monitoring, followed by selecting a monitoring time interval, an initial threshold alarm level. Selections are then made regarding transaction codes to monitor, acceptable average transaction processing times, and acceptable ratio of successful transactions to unsuccessful transactions. The transaction processing resources are then monitored to count the number of transactions processed, measure the processing time for individual transactions, and capture their corresponding transaction result code. An average transaction processing time value and a successful transaction ratio processing value are generated. Comparison operations are performed. If the results of the comparison operations are acceptable, then threshold crossing alarms are then suppressed and the threshold alarm level is increased. If not, then a threshold crossing alarm is generated and the threshold alarm level is decreased.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Embodiments of the disclosure relate in general to the field ofcomputers and similar technologies, and in particular to softwareutilized in this field. Still more particularly, it relates to theautomated management of threshold crossing alarms.

2. Description of the Related Art

Threshold alarms are commonly used in resource management systems toensure that resources are operating at their optimum capacity. Settingthreshold crossing alarms is simple. Setting them correctly andeffectively often proves to be much more difficult. If they are set toolow, alarms are created even though there is no problem. If they are settoo high, there may be a problem long before the threshold is reached.Thresholds may also be dependent upon individual system components, andin certain cases, even the current release of operating system andapplication software running on the system. Another issue isarchitectural design. As an example, some computers only use memory asthey need it. Others seize all available memory and then allocates it toprocesses as each process requests.

In addition, threshold alarms are useful for capacity planning. Forinstance, if utilization on a particular Wide Area Network (WAN)interface consistently exceeds 75%, then it might be a good time toincrease the bandwidth or decrease the amount of traffic crossing theinterface. More commonly, threshold alarms are used for fault managementand fault isolation. For instance, if the CPU utilization of a routerconsistently exceeds 90%, yet there is no recognized processing pattern,there is most likely a problem with the router.

Furthermore, modern day distributed application platforms are oftendistributed in clusters for redundancy or performance. Today, it is notunusual for a single application instance to span tens of servers. As aresult, accurately setting thresholds simultaneously becomes morecomplex, yet more necessary.

In view of the foregoing it will be apparent that thresholds can play akey role in quickly isolating system faults when they are properly set.When not, a flood of events and alarms may be generated, masking theunderlying system issues or processing faults. There are variousstatistical approaches to dealing with the threshold setting issues, butsuch approaches are static and fail to dynamically adjust to changes inavailable resources and transaction processing volumes. More commonly,the setting of threshold levels is performed manually, which is tedious,time consuming, and error-prone.

BRIEF SUMMARY OF THE INVENTION

The present invention includes, but is not limited to, a method, systemand computer-usable medium for providing automated management ofthreshold crossing alarms. In various embodiments, transactionprocessing resources are selected for monitoring. A time interval isselected to monitor the previously selected transaction processingresources, followed by the selection of an initial threshold alarmlevel. An increment is selected to increase or decrease the previouslyselected initial threshold alarm level. Selections are then maderegarding transaction codes to monitor, acceptable average transactionprocessing times, and acceptable ratio of successful transactions tounsuccessful transactions. In various embodiments, the selections aremade in response to receiving user input data related to the respectiveselections. In various other embodiments, the selections are madeautomatically in response to receiving resource management system datarelated to the respective selections.

The transaction processing resources are then monitored to count thenumber of transactions processed, measure the processing time forindividual transactions, and capture their corresponding transactionresult code. The number of transactions processed during the monitoringtime interval is processed with the individual processing times of theprocessed transactions to generate an average transaction processingtime value. Then, the number of transactions processed during themonitoring time interval is processed with the respective transactionresult codes associated with the processed transactions to generate asuccessful transaction ratio processing value.

The average transaction processing time value is then compared to theacceptable average transaction processing time. If the averagetransaction processing time value is acceptable, then the successfultransaction processing ratio value is compared to the acceptable ratioof successful transactions. If the successful transaction processingratio value is acceptable, then threshold crossing alarms generated as aresult of transaction processing faults are designated as child eventsof the corresponding transaction processing faults. The thresholdcrossing alarms are then suppressed, followed by increasing thethreshold alarm level by the previously selected increment. However, ifit is determined that the average transaction processing time value isnot acceptable or the successful transaction processing ratio value isnot acceptable, then a threshold crossing alarm is generated, followedby decreasing the threshold alarm level by the previously selectedincrement selected. The above, as well as additional purposes, features,and advantages of the present invention will become apparent in thefollowing detailed written description.

BRIEF DESCRIPTION OF THE DRAWINGS

Selected embodiments of the present invention may be understood, and itsnumerous objects, features and advantages obtained, when the followingdetailed description is considered in conjunction with the followingdrawings, in which:

FIG. 1 depicts an exemplary client computer in which the presentinvention may be implemented;

FIG. 2 shows a simplified block diagram of a threshold crossing alarmmanagement module as implemented with a resource management system forthe automated management of threshold crossing alarms; and

FIGS. 3 a-b are a generalized flow chart of the operation of a thresholdcrossing alarm management module as implemented with a networkmanagement for the automated management of threshold crossing alarms.

DETAILED DESCRIPTION

A method, system and computer-usable medium are disclosed for providingautomated management of threshold crossing alarms. As will beappreciated by one skilled in the art, the present invention may beembodied as a method, system, or computer program product. Accordingly,embodiments of the invention may be implemented entirely in hardware,entirely in software (including firmware, resident software, micro-code,etc.) or in an embodiment combining software and hardware. These variousembodiments may all generally be referred to herein as a “circuit,”“module,” or “system.” Furthermore, the present invention may take theform of a computer program product on a computer-usable storage mediumhaving computer-usable program code embodied in the medium.

Any suitable computer usable or computer readable medium may beutilized. The computer-usable or computer-readable medium may be, forexample, but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium. More specific examples (a non-exhaustive list) ofthe computer-readable medium would include the following: an electricalconnection having one or more wires, a portable computer diskette, ahard disk, a random access memory (RAM), a read-only memory (ROM), anerasable programmable read-only memory (EPROM or Flash memory), anoptical fiber, a portable compact disc read-only memory (CD-ROM), anoptical storage device, a transmission media such as those supportingthe Internet or an intranet, or a magnetic storage device. In thecontext of this document, a computer-usable or computer-readable mediummay be any medium that can contain, store, communicate, propagate, ortransport the program for use by or in connection with the instructionexecution system, apparatus, or device. The computer usable program codemay be transmitted using any appropriate medium, including but notlimited to the Internet, wireline, optical fiber cable, radio frequency(RF), etc.

Computer program code for carrying out operations of the presentinvention may be written in an object oriented programming language suchas Java, Smalltalk, C++ or the like. However, the computer program codefor carrying out operations of the present invention may also be writtenin conventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Embodiments of the invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

FIG. 1 is a block diagram of an exemplary client computer 102 in whichthe present invention may be utilized. Client computer 102 includes aprocessor unit 104 that is coupled to a system bus 106. A video adapter108, which controls a display 110, is also coupled to system bus 106.System bus 106 is coupled via a bus bridge 112 to an Input/Output (I/O)bus 114. An I/O interface 116 is coupled to I/O bus 114. The I/Ointerface 116 affords communication with various I/O devices, includinga keyboard 118, a mouse 120, a Compact Disk-Read Only Memory (CD-ROM)drive 122, a floppy disk drive 124, and a flash drive memory 126. Theformat of the ports connected to I/O interface 116 may be any known tothose skilled in the art of computer architecture, including but notlimited to Universal Serial Bus (USB) ports.

Client computer 102 is able to communicate with a service providerserver 152 via a network 128 using a network interface 130, which iscoupled to system bus 106. Network 128 may be an external network suchas the Internet, or an internal network such as an Ethernet Network or aVirtual Private Network (VPN). Using network 128, client computer 102 isable to use the present invention to access service provider server 152.

A hard drive interface 132 is also coupled to system bus 106. Hard driveinterface 132 interfaces with a hard drive 134. In a preferredembodiment, hard drive 134 populates a system memory 136, which is alsocoupled to system bus 106. Data that populates system memory 136includes the client computer's 102 operating system (OS) 138 andsoftware programs 144.

OS 138 includes a shell 140 for providing transparent user access toresources such as software programs 144. Generally, shell 140 is aprogram that provides an interpreter and an interface between the userand the operating system. More specifically, shell 140 executes commandsthat are entered into a command line user interface or from a file.Thus, shell 140 (as it is called in UNIX®), also called a commandprocessor in Windows®, is generally the highest level of the operatingsystem software hierarchy and serves as a command interpreter. The shellprovides a system prompt, interprets commands entered by keyboard,mouse, or other user input media, and sends the interpreted command(s)to the appropriate lower levels of the operating system (e.g., a kernel142) for processing. While shell 140 generally is a text-based,line-oriented user interface, the present invention can also supportother user interface modes, such as graphical, voice, gestural, etc.

As depicted, OS 138 also includes kernel 142, which includes lowerlevels of functionality for OS 138, including essential servicesrequired by other parts of OS 138 and software programs 144, includingmemory management, process and task management, disk management, andmouse and keyboard management.

Software programs 144 may include a browser 146 and email client 148.Browser 146 includes program modules and instructions enabling a WorldWide Web (WWW) client (i.e., client computer 102) to send and receivenetwork messages to the Internet using HyperText Transfer Protocol(HTTP) messaging, thus enabling communication with service providerserver 152. Software programs 144 also include a threshold crossingalarm management module 150. The threshold crossing alarm managementmodule 150 includes code for implementing the processes described inFIGS. 2 through 3 described hereinbelow. In one embodiment, clientcomputer 102 is able to download threshold crossing alarm managementmodule 150 from a service provider server 152.

The hardware elements depicted in client computer 102 are not intendedto be exhaustive, but rather are representative to highlight componentsused by the present invention. For instance, client computer 102 mayinclude alternate memory storage devices such as magnetic cassettes,Digital Versatile Disks (DVDs), Bernoulli cartridges, and the like.These and other variations are intended to be within the spirit andscope of the present invention.

FIG. 2 shows a simplified block diagram of a threshold crossing alarmmanagement module as implemented with a resource management system inaccordance with an embodiment of the invention for the automatedmanagement of threshold crossing alarms. In various embodiments, athreshold alarm management module 150 is implemented with a resourcemanagement system 202 to automate the management of threshold crossingalarms. In these and other embodiments, the resource management system202 comprises a repository of threshold crossing alarm data and managesa plurality of transaction processing resources ‘A’ 204 through ‘n’ 206.In various embodiments, the transaction processing resources ‘A’ 204through ‘n’ 206, comprise a variety of computing and communicationhardware, software and middleware applications, along with networkingand communication technologies. It will be apparent to skilledpractitioners of the art that many such combinations are possible toprovide the processing of transactions and the foregoing is not intendedto limit the spirit, scope, or intent of the invention.

In this embodiment, transaction processing resources ‘A’ 204 through ‘n’206 are selected for monitoring. A time interval is selected to monitorthe previously selected transaction processing resources, followed bythe selection of an initial threshold alarm level. An increment isselected to increase or decrease the previously selected initialthreshold alarm level. Selections are then made regarding transactioncodes to monitor, acceptable average transaction processing times, andacceptable ratio of successful transactions to unsuccessfultransactions. In various embodiments, the selections are made inresponse to receiving user input data related to the respectiveselections. In various other embodiments, the selections are madeautomatically in response to receiving resource management system datarelated to the respective selections.

The transaction processing resources ‘A’ 204 through ‘n’ 206 are thenmonitored to count the number of transactions processed, measure theprocessing time for individual transactions, and capture theircorresponding transaction result code. The number of transactionsprocessed during the monitoring time interval is processed with theindividual processing times of the processed transactions to generate anaverage transaction processing time value. Then, the number oftransactions processed during the monitoring time interval is processedwith the respective transaction result codes associated with theprocessed transactions to generate a successful transaction ratioprocessing value.

The average transaction processing time value is then compared to theacceptable average transaction processing time. If the averagetransaction processing time value is acceptable, then the successfultransaction processing ratio value is compared to the acceptable ratioof successful transactions. If the successful transaction processingratio value is acceptable, then threshold crossing alarms generated as aresult of transaction processing faults are designated as child eventsof the corresponding transaction processing faults. The thresholdcrossing alarms are then suppressed, followed by increasing thethreshold alarm level by the previously selected increment. However, ifit is determined that the average transaction processing time value isnot acceptable or the successful transaction processing ratio value isnot acceptable, then a threshold crossing alarm is generated, followedby decreasing the threshold alarm level by the previously selectedincrement selected.

FIGS. 3 a-b are a generalized flow chart of the operation of a thresholdcrossing alarm management module as implemented with a resourcemanagement system in accordance with an embodiment of the invention forthe automated management of threshold crossing alarms. In thisembodiment, threshold crossing alarm level adjustment operations arebegun in step 302, followed by the selection in step 304 of transactionprocessing resources to monitor. In step 306, a time interval isselected to monitor the previously selected transaction processingresources, followed in step 308 with the selection of an initialthreshold alarm level. In step 310, an increment is selected to increaseor decrease the previously selected initial threshold alarm level. Instep 312, selections are made regarding transaction codes to monitor,acceptable average transaction processing times, and acceptable ratio ofsuccessful transactions to unsuccessful transactions. In variousembodiments, the selections made in steps 304, 306, 308, 310, and 312are made in response to receiving user input data related to therespective selections. In various other embodiments, the selections madein steps 304, 306, 308, 310, and 312 are made automatically in responseto receiving resource management system data related to the respectiveselections.

In step 314 the selected transaction processing resources are monitoredto count the number of transactions processed, measure the processingtime for individual transactions, and capture their correspondingtransaction result code. A determination is then made in step 316whether the previously selected transaction monitoring time interval haselapsed. If not, the process is continued, proceeding to step 314.Otherwise, the number of transactions processed during the monitoringtime interval is processed with the individual processing times of theprocessed transactions in step 318 to generate an average transactionprocessing time value. Then, in step 320, the number of transactionsprocessed during the monitoring time interval is processed with therespective transaction result codes associated with the processedtransactions to generate a successful transaction ratio processingvalue.

In step 322, the average transaction processing time value generated instep 318 is then compared to the acceptable average transactionprocessing time selected in step 312. A determination is then made instep 322 whether the average transaction processing time value isacceptable. If so, then in step 326, the successful transactionprocessing ratio value generated in step 320 is compared to theacceptable ratio of successful transactions selected in step 312. Adetermination is then made in step 328 whether the successfultransaction processing ratio value is acceptable. If not, or if it isdetermined in step 324 that the average transaction processing timevalue is not acceptable, then a threshold crossing alarm is generated instep 330, followed by step 332, where the threshold alarm level selectedin step 308 is decreased by the increment selected in step 310.

However, if it is determined in step 328 that the successful transactionprocessing ratio value is not acceptable, then threshold crossing alarmsgenerated as a result of transaction processing faults are designated instep 334 as child events of the corresponding transaction processingfaults. The threshold crossing alarms are then suppressed in step 338,followed by step 338, where the threshold alarm level selected in step308 is increased by the increment selected in step 310. Once thethreshold alarm level is decreased in step 332 or increased in step 338,a determination is made in step 340 whether to end threshold crossingalarm level adjustment operations. If not, then a determination is madein step 342 whether to change the selection of transaction resources tomonitor. If so, the process is continued, proceeding with step 304.Otherwise, the process is continued, proceeding with step 314. However,if it is determined in step 340 to end threshold crossing alarm leveladjustment operations, then they are ended in step 344.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a,” “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of skill in the art withoutdeparting from the scope and spirit of the invention. The embodiment waschosen and described in order to best explain the principles of theinvention and the practical application, and to enable others of skillin the art to understand the invention for various embodiments withvarious modifications as are suited to the particular use contemplated.

Having thus described the invention of the present application in detailand by reference to preferred embodiments thereof, it will be apparentthat modifications and variations are possible without departing fromthe scope of the invention defined in the appended claims.

1. A computer-implementable method for automating the management ofthreshold crossing alarms, comprising: receiving user input datacomprising: threshold setting data comprising an alarm threshold value;and threshold adjustment data comprising an threshold adjustment value;generating a threshold crossing alarm and decreasing the alarm thresholdvalue by the threshold adjustment value in response to receiving a firsttransaction processing value that is greater than the alarm thresholdvalue; and suppressing a threshold crossing alarm and increasing thealarm threshold value by the threshold adjustment value in response toreceiving a second transaction processing value that is less than thealarm threshold value.
 2. The method of claim 1, further comprising:counting the number of transactions processed by a plurality ofresources measuring the time to process an individual transaction;capturing a transaction result code associated with the individualtransaction; processing the number of transactions and the individualtransaction processing times to generate an average transactionprocessing time value; processing the number of transactions and theindividual transaction result codes to generate a successful transactionprocessing ratio value; processing the average transaction processingtime value and the successful transaction processing ratio value togenerate the first transaction processing value and the secondtransaction processing value.
 3. The method of claim 2, wherein thefirst transaction processing value is generated when: the averagetransaction processing time value is greater than a predetermined targettransaction processing time value; and the successful transactionprocessing ratio value is less than a target transaction processingratio value.
 4. The method of claim 3, wherein the target transactionprocessing time value and the target transaction processing ratio valueare selected by receiving user input data comprising target transactionprocessing time data and target transaction processing ratio data. 5.The method of claim 2, wherein the second transaction processing valueis generated when: the average transaction processing time value is lessthan a predetermined target transaction processing time value; and thesuccessful transaction processing ratio value is greater than a targettransaction processing ratio value.
 6. The method of claim 5, whereinthe target transaction processing time value and the target transactionprocessing ratio value are selected by receiving user input datacomprising target transaction processing time data and targettransaction processing ratio data.
 7. A system comprising: a processor;a data bus coupled to the processor; and a computer-usable mediumembodying computer program code, the computer-usable medium beingcoupled to the data bus, the computer program code automating themanagement of threshold crossing alarms and comprising instructionsexecutable by the processor and configured for: receiving user inputdata comprising: threshold setting data comprising an alarm thresholdvalue; and threshold adjustment data comprising an threshold adjustmentvalue; generating a threshold crossing alarm and decreasing the alarmthreshold value by the threshold adjustment value in response toreceiving a first transaction processing value that is greater than thealarm threshold value; and suppressing a threshold crossing alarm andincreasing the alarm threshold value by the threshold adjustment valuein response to receiving a second transaction processing value that isless than the alarm threshold value.
 8. The system of claim 7, furthercomprising processing logic operable to: count the number oftransactions processed by a plurality of resources measure the time toprocess an individual transaction; capture a transaction result codeassociated with the individual transaction; process the number oftransactions and the individual transaction processing times to generatean average transaction processing time value; process the number oftransactions and the individual transaction result codes to generate asuccessful transaction processing ratio value; process the averagetransaction processing time value and the successful transactionprocessing ratio value to generate the first transaction processingvalue and the second transaction processing value.
 9. The system ofclaim 8, wherein the first transaction processing value is generatedwhen: the average transaction processing time value is greater than apredetermined target transaction processing time value; and thesuccessful transaction processing ratio value is less than a targettransaction processing ratio value.
 10. The system of claim 9, whereinthe target transaction processing time value and the target transactionprocessing ratio value are selected by receiving user input datacomprising target transaction processing time data and targettransaction processing ratio data.
 11. The system of claim 8, whereinthe second transaction processing value is generated when: the averagetransaction processing time value is less than a predetermined targettransaction processing time value; and the successful transactionprocessing ratio value is greater than a target transaction processingratio value.
 12. The system of claim 7, wherein the target transactionprocessing time value and the target transaction processing ratio valueare selected by receiving user input data comprising target transactionprocessing time data and target transaction processing ratio data.
 13. Acomputer-usable medium embodying computer program code, the computerprogram code comprising computer executable instructions configured for:receiving user input data comprising: threshold setting data comprisingan alarm threshold value; and threshold adjustment data comprising anthreshold adjustment value; generating a threshold crossing alarm anddecreasing the alarm threshold value by the threshold adjustment valuein response to receiving a first transaction processing value that isgreater than the alarm threshold value; and suppressing a thresholdcrossing alarm and increasing the alarm threshold value by the thresholdadjustment value in response to receiving a second transactionprocessing value that is less than the alarm threshold value.
 14. Thecomputer usable medium of claim 13, further comprising: counting thenumber of transactions processed by a plurality of resources measuringthe time to process an individual transaction; capturing a transactionresult code associated with the individual transaction; processing thenumber of transactions and the individual transaction processing timesto generate an average transaction processing time value; processing thenumber of transactions and the individual transaction result codes togenerate a successful transaction processing ratio value; processing theaverage transaction processing time value and the successful transactionprocessing ratio value to generate the first transaction processingvalue and the second transaction processing value.
 15. The computerusable medium of claim 14, wherein the first transaction processingvalue is generated when: the average transaction processing time valueis greater than a predetermined target transaction processing timevalue; and the successful transaction processing ratio value is lessthan a target transaction processing ratio value.
 16. The computerusable medium of claim 15, wherein the target transaction processingtime value and the target transaction processing ratio value areselected by receiving user input data comprising target transactionprocessing time data and target transaction processing ratio data. 17.The computer usable medium of claim 14, wherein the second transactionprocessing value is generated when: the average transaction processingtime value is less than a predetermined target transaction processingtime value; and the successful transaction processing ratio value isgreater than a target transaction processing ratio value.
 18. Thecomputer usable medium of claim 17, wherein the target transactionprocessing time value and the target transaction processing ratio valueare selected by receiving user input data comprising target transactionprocessing time data and target transaction processing ratio data. 19.The computer usable medium of claim 13, wherein the computer executableinstructions are deployable to a client computer from a server at aremote location.
 20. The computer usable medium of claim 13, wherein thecomputer executable instructions are provided by a service provider to acustomer on an on-demand basis.